<template>
  <van-nav-bar
    title="注册"
    left-text="返回"
    left-arrow
    @click-left="
      () => {
        $router.back('/');
      }
    "
  />
  <van-form @submit="onSubmit">
    <van-cell-group inset>
      <van-field
        v-model="reactiveFrom.username"
        name="用户名"
        label="用户名"
        placeholder="用户名"
        :rules="[{ pattern, message: '请填写用户名' }]"
      />
      <van-field
        v-model="reactiveFrom.password"
        type="password"
        name="密码"
        label="密码"
        placeholder="密码"
        :rules="[{ pattern, message: '请填写密码' }]"
      />
      <van-field
        v-model="reactiveFrom.passwordok"
        type="password"
        name="确认密码"
        label="确认密码"
        placeholder="确认密码"
        :rules="[{ validator, message: '请填写密码' }]"
      />
    </van-cell-group>
    <div style="margin: 16px">
      <van-button
        round
        block
        type="primary"
        native-type="submit"
        @click="zhuce"
      >
        提交
      </van-button>
    </div>
  </van-form>
</template>

<script setup>
import { reactive } from "vue";
const reactiveFrom = reactive({
  username: "",
  password: "",
  passwordok: "",
});
import { registerApi } from "@/api/api";
import { showToast } from "vant";
import { useRouter } from "vue-router";
let router = new useRouter();

const zhuce = () => {
  registerApi(reactiveFrom.username, reactiveFrom.password).then((res) => {
    console.log("注册数据", res);
    if (res.data.code == 0) {
      showToast({
        type: "success",
        message: "注册成功",
        duration: 2000,
        onClose() {
          router.push("/login");
        },
      });
    } else {
      showToast({
        type: "fail",
        message: "用户名重复",
        duration: 2000,
      });
    }
  });
};
</script>

<style lang="scss" scoped></style>
